#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE

class MyTimer;
class QLabel;
class QCheckBox;
class QSystemTrayIcon;

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

    void on_start_clicked();
    void on_reset_clicked();
    void on_skip_clicked();
    void on_timer_up();
    void on_about_clicked();

    void closeEvent(QCloseEvent *event) override;

private:
    void next_stage(bool run = false);

private:
    Ui::MainWindow *ui;

    int stage = 0;
    const int stage_durations[8] {25, 5, 25, 5, 25, 5, 25, 20};
    MyTimer *ptimer;
    QLabel *plabel;
    QCheckBox *actionBypassDoNotDisturb;

    QSystemTrayIcon *trayIcon;
    QMenu *trayIconMenu;
};
#endif // MAINWINDOW_H
